A typical server platform consists of multiple processor sockets, memory subsystem and a number of PCI Express controllers. The level of robust platform management is one of the key attributes that distinguishes a server from platform targeted for individual use, such as Personal Computers, laptops, notebooks, tablets, etc. The management of a server platform is typically orchestrated by the BMC (Baseboard Management Controller). The BMC allows the platform to be remotely managed through use of an application or web-based interface comprising a remote management console and uses a sideband path into the network controller to facilitate communications between the BMC and the remote management console. Since server management is a complex task, the BMC offloads some of the responsibilities to a Management Engine (ME). The ME is configured to perform various platform management tasks via communication with platform components over applicable interconnects, and communicates component operating parameters and associated data back to the BMC.
There are several manageability applications that require relatively high bandwidth (˜10 MB/s), low latency communication paths between various components. Media redirection (mounting a remote drive) and Video redirection are two examples of such applications. In the current server platforms, a fast sideband bus such as RMII (Reduced Media Independent Interface) or an internal bus is used to meet these needs. A dedicated sideband bus increases component costs (more pins) and limits motherboard placement options. Internal busses limit mix and match configurations such as supporting media redirection using a discrete LAN or discrete graphics component.
Management Component Transport Protocol (MCTP) is a standard developed by Distributed Management Task Force (DMTF) for transporting manageability packets across various interconnects. “MCTP PCIe VDM Transport Binding Protocol” is a DMTF-authored specification that defines how MCTP packets may be sent over PCI Express (PCIe). MCTP over PCIe enables high bandwidth management traffic to be multiplexed over PCIe busses (i.e. interconnect fabric and/or PCIe links). Since most management components are already hooked up to one of these busses, this approach eliminates the need for a separate high bandwidth bus and enables more flexible arrangement of manageability components. Each of these components can be an “MCTP endpoint” and exchange messages over the existing fabric. When transported over PCIe, MCTP packets take the form of a Vendor Defined Message (VDM). In addition, MCTP or more generically PCI Express VDMs can be utilized for managing the processors themselves (e.g. processor thermals, power and errors).
Modern server platforms typically employ multiple processors and each processor may have MCTP over PCIe endpoints attached to it. However, in order to access the MCTP over PCIe endpoint using conventional techniques, there needs to be an ME associated with each processor. For example, a server platform employing four processors would require four ME's. Another issue with traditional management platform architectures is the BMC uses a Platform Environmental Control Interface (PECI) pin for managing processors. This works fine as long as there is only one management controller in the system and milliseconds access latency is acceptable. There are configurations where an ME needs access to processor instrumentation for Power Capping purposes. In addition, there are new emerging usages such as power/performance characterization which can benefit from 10-100 microseconds access latency.